home *** CD-ROM | disk | FTP | other *** search
/ Software Vault: The Diamond Collection / The Diamond Collection (Software Vault)(Digital Impact).ISO / cdr48 / tsbat146.zip / TSBAT.NWS < prev    next >
Text File  |  1995-01-30  |  40KB  |  718 lines

  1. University of Vaasa, Finland, Sun SPARCstation IPX garbo.uwasa.fi
  2. has a large collection of PD and shareware PC programs available by
  3. anonymous ftp or mail server. The file /pc/ts/0news-ts contains news
  4. about the TS-programs in the /pc/ts directory (in reverse order).
  5. This text, which you now have, is an edited extract from the
  6. 0news-ts file (and old the feedback /pc/ts/fback028.zip file). (Also
  7. see the tspost*.txt (* = 01,02,...) at garbo.uwasa.fi for additional
  8. feedback and information.)
  9. ..................................................................
  10. Prof. Timo Salmi      Co-moderator of comp.archives.msdos.announce
  11. Moderating at garbo.uwasa.fi anonymous FTP archives  193.166.120.5
  12. Faculty of Accounting & Industrial Management; University of Vaasa
  13. Internet: ts@uwasa.fi   BBS +(358)-61-3170972; FIN-65101,  Finland
  14. ...................................................................
  15.  
  16. Mon 30-Jan-95: My collection of useful batch files and tricks
  17. includes the file "DOSTRICK.TXT Assorted MsDos tricks and tips"
  18. which in turn has the item "7) Selected Doskey macro examples". I
  19. have added descriptions and material to that item. Also made some
  20. small additions of text to the file "BATRICKS.TXT Assorted batch
  21. tricks and tips". These are parts of my updated
  22.  garbo.uwasa.fi:/pc/ts/tsbat46a.zip
  23.  A collection of useful batch files and tricks
  24.  
  25. Sun 4-Sep-94: I have a collection of useful batch files and batch
  26. tricks, which I have updated. It is now garbo.uwasa.fi:/pc/pd2/
  27. tsbat46.zip.
  28. Added the following items to DOSTRICK.TXT
  29.  4) Stepping trough config.sys and autoexec.bat command by command.
  30.  5) Getting rid of "Insert diskette for drive B:"
  31.  6) Conditional deleting of files
  32.  7) Selected Doskey macro examples
  33.  
  34. Tue 31-May-94: I have updated my collection of useful batches and
  35. batch tricks. It is now garbo.uwasa.fi:/pc/ts/tsbat45.zip.
  36.  - Added a list of user feedback to the TSBAT.INF file
  37.  - Added item 39) Getting the file basename
  38.  - Added optional batch enhancers:
  39.      BASENAME.EXE Extract file name from full name
  40.      BASEPATH.EXE Extract path name from full name
  41.      BASEXTEN.EXE Extract file extension from name
  42.  - Added
  43.      DOSTRICK.TXT Assorted MsDos tricks and tips
  44.  
  45. Sat 15-Jan-94: I have updated my collection of useful batches and
  46. batch tricks. It is now garbo.uwasa.fi:/pc/ts/tsbat44.zip. Added the
  47. following items to batricks.txt:
  48.  37) Traversing a directory tree
  49. Added an related demonstration batch SWEEP.BAT.
  50.  38) Echoing the redirection symbol
  51. Rewrote and added material to
  52.  24) Redirecting a batch file's output
  53.  30) How to obtain the MsDos version into an environment variable
  54. Updated
  55.  PATH.TXT  "How to beat the 127 byte limit"
  56.  SCANZ.BAT "Scan for viruses (incl. execomp)"
  57.  
  58. Sat 8-May-93: I have updated by collection of useful batches and
  59. batch tricks to be garbo.uwasa.fi:/pc/ts/tsbat43.zip by adding the
  60. following items to batricks.txt.
  61.  31) Finding out the number of regular files on a drive
  62.  32) Augmenting line numbers to a text file
  63.  33) Storing and returning to the original directory (push and pop)
  64.  34) Enticing the current date into an environment variable
  65.  35) Identifying the individual PC
  66.  36) For loop and redirection quirks
  67. I have updated by adding a second method to
  68.  7)  Convert a parameter to uppercase
  69. Also a few minor updates to some of the batches.
  70.  
  71. Tue 2-Mar-93: I have updated by collection of useful batches and
  72. batch tricks to be garbo.uwasa.fi:/pc/ts/tsbat42.zip by adding the
  73. following items to batricks.txt.
  74.  26) A simple trick to "disable" a drive
  75.  27) Sending an escape sequence to the printer
  76.  28) Creating a random string
  77.  29) Finding out the length of a string
  78.  30) How to obtain the MsDos version into an environment variable
  79. Added GFIND.BAT "Combine Garbo index files info". It is a
  80. specialized batch for combining the information from Garbo MsDos FTP
  81. archives file index files INDEX.ZIP, _dir.zip and _file.zip. GFIND
  82. is also available in Unix format as garbo.uwasa.fi:/pc/ts/gfind
  83.  
  84. Sat 30-Jan-93: I have updated by collection of useful batches and
  85. batch tricks.
  86.  Added
  87.   SUBS.BAT        Make current dir a subst drive
  88.  Updated
  89.   BATRICKS.TXT    Assorted batch tricks, plus added
  90.     24. Redirecting a batch file's output
  91.     25. Testing for environment space sufficiency
  92.   PROMPT.TXT      Tips on prompt usages with ansi
  93.  
  94. Sat 19-Dec-92: Update garbo.uwasa.fi:/pc/ts/tsbat40.zip of my
  95. collection of useful batch files and batch tips & tricks. Added
  96.   BDIR.BAT  "Bare list & count of directories"
  97.   HEX.BAT   "Add and subtract hexadecimal values"
  98.   PORTS.BAT "Display port base I/O addresses"
  99. Updated and rewrote
  100.   BATRICKS.TXT "Assorted batch tricks"
  101. Corrected
  102.   COLOR.BAT "Set screen color attributes"
  103. It left on a tmp_ environment value.  It shouldn't have.
  104.  
  105. Mon 26-Oct-92: I have again updated my collection of useful batch
  106. files and batch tricks. It is now garbo.uwasa.fi:/pc/ts/tsbat39.zip.
  107.    Added COLORMAP.BAT "Ansi screen color esc. seq. map". I adapted
  108. the idea from PC Computing October 1992. The difference in my
  109. adaptation is that it displays the escape sequence codes you need to
  110. induce the colors on the map. Furthermore, I do not use any
  111. environment variables.
  112.    Added TOUCH.BAT "Touch a file's datetime stamp". It is quite
  113. amazing the thing one can actually do with bare batch files using
  114. the tricks trade.  TOUCH.BAT is a good example of this.
  115.    Added EDIT.BAT "A truly trivial text editor". Appends text to a
  116. text file from the con device, that is the keyboard.
  117.    Made some enhancements to BATRICKS.TXT "Assorted batch tricks"
  118. and added the following item:
  119.  21) Testing if a file name includes a path
  120.  
  121. Sun 20-Sep-92: I have again updated my collection of useful batch
  122. files and batch tricks. It is now garbo.uwasa.fi:/pc/ts/tsbat38.zip.
  123.    WEEKLY.BAT "Run program(s) once a week" is a new batch in my
  124. collection. If you want to run a program once a week when you reboot
  125. your computer, put
  126.   CALL WEEKLY Weekday YourApplicationName [Param1] [Param2] [...]
  127. in your autoexec.bat file. Only one application, or one set of
  128. applications, can be run on the same weekday with this batch. The
  129. application can be a different one for each weekday.
  130. Examples: CALL WEEKLY Mon YourApplication
  131.           CALL WEEKLY Tue echo Time to back up^G^G^G
  132.           CALL WEEKLY Fri call YourBatchOfManyPrograms
  133. No auxiliary programs outside the normal MsDos commands have been
  134. used in WEEKLY.BAT. Not easy, but it can be done.
  135.    DAILY.BAT "Run a program only once a day" which you call call
  136. from your autoexec.bat relies on the MsDos external FC command. The
  137. output of this command has been rewritten in MsDos 5.0. DAILY.BAT
  138. did therefore not work for MsDos version 5.0.  I have consequently
  139. rewritten DAILY.BAT to comply also with the MsDos 5.0 version. A
  140. similar amendment has been done to VIRUS.BAT "Another batch-based
  141. virus test".
  142.    BOOT.BAT "Choose your boot configuration" now utilizes nu
  143. NOBOOT.EXE from garbo.uwasa.fi:/pc/ts/tstsr12.zip (or whichever is
  144. the current version number) if it is available. This is to prevent
  145. the user from accidentally being too hasty about rebooting while the
  146. batch is still running.
  147.    LASTBOOT.BAT "Show date + time of previous boot" streamlined to
  148. show just the date and time without the confusion of referring to
  149. the previous boot with "Current date is" which MsDos date (and time)
  150. produce.
  151.    PROMPT.TXT "Tips on prompt usages with ansi" has some additional
  152. information on key redefinitions.
  153.    BATRICKS.TXT added the following new items:
  154. 19. Utilizing the subst command in paths
  155. 20. How to run a batch once a week (testing for the weekday)
  156.    Some other, minor amendments.
  157.  
  158. Sun 30-Aug-1992: I have updated my collection of useful batch files
  159. and batch tricks. It is now garbo.uwasa.fi:/pc/ts/tsbat37.zip.
  160.    BATRICKS.TXT "Assorted batch tricks" now also explains how to
  161. extract the extension from a file name, how to prevent breaking a
  162. batch, how to avoid auxiliary batches, and much more.
  163.    PUSHDIRE.BAT "Non-resident push directory" has been totally
  164. rewritten and is now self-contained. The external auxiliary program
  165. SETPUSHD.EXE is no longer needed, and has been omitted from the
  166. collection. The companion program POPDIRE.BAT has been brought up to
  167. date. Both the batches can take an /s (show) switch. See the remarks
  168. within the batches for more information.
  169.    DELPATH.BAT "Delete a directory from the path" has been rewritten
  170. so that it creates the auxiliary file that it needs as a temporary
  171. file. Thus SETVAR.BAT is not longer needed in beforehand and has
  172. been eliminated from the collection.
  173.    UNPACK.BAT "Unpack-test-view any archivetype" does not need, nor
  174. allow an extension in the archive name because it know how to detect
  175. the type of the archive. The batch now first checks that the user
  176. has not mistakenly given an extension. UNPACK.BAT also treats the
  177. other error situations in a more informative manner than before.
  178.    D.BAT "Directory with sort & wildsearch" uses implicit wildcards
  179. to match anywhere in the file name(s). The batch now checks that the
  180. users soes not enter explicit wildcards to D.BAT.
  181.    LOCATE.BAT "Wildcard file find". Added an optional /p paging
  182. switch. Clarified the instructions.
  183.    WILD.BAT "Wilcard any command". Corrected the simple case of no
  184. command given to wild.bat to jump out.
  185.    ARC2ZIP.BAT "Single .arc to .zip with comment" has been rewritten
  186. to check more closely to correct input format. Likewise the renamed
  187. ZOO2ZIP.BAT and EXE2ZIP.BAT. ARC2ZIP.BAT is now harddisk oriented
  188. like the two others, since working on floppies can be now considered
  189. rare.
  190.    Some other minor changes and rewrites of the batches and their
  191. documentation. (The batches are self-documenting.)
  192.  
  193. Thu 6-Aug-92: I have updated my collection of useful batch files and
  194. batch tricks. It is now garbo.uwasa.fi:/pc/ts/tsbat36.zip. Among the
  195. updates and enhancements are
  196.    C.BAT "Lazy changing of a directory" has been enhanced. The basic
  197. idea is that if you are tired of typing the backslash (\), C.BAT
  198. lets you use an easier syntax.  For example if you have a directory
  199. on the current drive called \text\jokes\stupid you can apply the
  200. form "c text jokes stupid" without needing the backslash. If you
  201. type c alone, it takes you to the root directory. Now C.BAT can
  202. handle drives too, and at one go at that. For example of you are on
  203. the C: drive and your directory is on D: you can apply
  204.                 c d: text jokes stupid
  205. The beauty of the system is that the "d:" is optional, that is the
  206. batch can identify whether the first parameter indicates a drive or
  207. not.
  208.    BATRICKS.BAT is a new addition. It covers assorted batch tricks
  209. from the batches in the TSBAT collection, and also a number
  210. additional tricks that are not covered in the in the actual batches.
  211.    BOOT.BAT "Choose your boot configuration" now sounds a warning
  212. bell if you choose an non-existing boot configuration. My own
  213. selection new has four alternative boots, but you can easily adjust
  214. to yours. To logic is rather straight-forward. Also a couple of
  215. typos in the rem comments have been corrected.
  216.    PROMPT.TXT "Tips on prompt usages with ansi" has some new
  217. clarifications.
  218.    SCANZ.BAT "Scan for viruses (incl. execomp)" has been brought up
  219. to date.
  220.    VAASA.INF "Info: Finland, Vaasa, U of Vaasa, our faculty, Timo"
  221. has been updated. This file is included in most of my program
  222. packages.
  223.    There are several minor adjustments in some of the other items.
  224.  
  225. Tue 14-Apr-92: I have updated my collection of useful batch files
  226. and tricks making it garbo.uwasa.fi:/pc/ts/tsbat35.zip.
  227.    Sometimes there are situations where a batch file needs to call
  228. another in order to perform its task. There is a genuinely clever
  229. trick in Wolverton & Gooking, Supercharging MsDos, Microsoft Press,
  230. 1991, p. 102 to circumvent the need of having a separate batch by
  231. making a batch call itself. I have modified the solution a bit and
  232. rewritten my SAFEDEL.BAT (safe delete of files) so that it no longer
  233. needs the auxiliary SAFEDEL1.BAT batch.
  234.    Likewise the SHOW.BAT (wildcard multi-file type command) has been
  235. updated and the auxiliary file SHOW1.BAT has been deleted.
  236.    The same book shows how to push the current directory without the
  237. need of resident programs, auxiliary executables, or environment
  238. variables. On the other hand this is less general than my
  239. PUSHDIRE.BAT which uses an auxiliary executable and environment
  240. variables. PUSHIT.BAT based on the idea from Wolverton & Gooking
  241. does not work between different drives.  I have added this file to
  242. tsbat35.zip along with its auxiliary text file CD.AUX.
  243.  
  244. Sat 21-Mar-92: I have updated my collection of useful batch files
  245. and tricks making it garbo.uwasa.fi:/pc/ts/tsbat34.zip.
  246.  - Added EXE2ZIP for converting self-extracting archives into
  247.    zipped archives. Requires that you have PKZIP.EXE and dive R:
  248.    available. I have ramdisk on drive R:, and if you do not you have
  249.    to either customize the batch or use a suitable drive
  250.    substitution like SUBST R: C:\
  251.  - Updated REZIP.BAT which removes authenticity -AV labels for
  252.    zipped archives. (Such a batch is useful, since PKWare's
  253.    authenticity code was broken and some BBSes put in their own -AV
  254.    labels). If errors are reported by pkzip, the user is asked for
  255.    whether s/he wants to go on nevertheless.
  256.  - Added a WILD.BAT to perform wildcarded operations with commands
  257.    which ordinarily do not allow wildcards. Example of WILD.BAT
  258.    usage: WILD *.txt type. The idea for my own version comes a from
  259.    a note in a Finnish computer journal (Mikro PC, March 1992, Aimo
  260.    Matikainen).
  261.  
  262. Sat 22-Feb-92: I have updated my collection of useful batch files
  263. and tricks making it garbo.uwasa.fi:/pc/ts/tsbat33.zip.
  264.  - Added PROMPT.TXT tips on prompt usages with ansi
  265.  - Added REPLY.BAT to demonstrate how batch files can after all
  266.    accept input without any auxiliary programs (like the common
  267.    ask.exe). This is not a widely known trick, although I cannot
  268.    claim true originality. It utilizes environment variables, and is
  269.    somewhat awkward, but shows that it can be done.
  270.  
  271. Tue 4-Feb-92: I have again updated my collection of useful batch
  272. files. It is now garbo.uwasa.fi:/pc/ts/tsbat32.zip. Some of the
  273. batches do not allow wildcards in file names given to them as
  274. parameters. There was a clever for-loop trick in the PC Magazine Vol
  275. 11 No 1 on page 364 to check whether the file name is wildcarded.
  276. Even if innovative the PC Magazine's solution uses unnecessarily an
  277. environment variable for the checking. But the article got me
  278. thinking that I should find a better solution and put in a check for
  279. wildcards to warn the user in those of my batches which do not allow
  280. wildcards. Consequently I have updated the following batches in my
  281. collection:
  282.  ARC2ZIP.BAT     Single .arc to .zip with comment
  283.  REZIP.BAT       Remove zip authenticity labels
  284.  UNPACK.BAT      Unpack-test-view any archivetype
  285.  ZOO2ZIPH.BAT    Single .zoo to .zip on harddisk
  286.  
  287. Sat 25-Jan-92: I have updated my collection of useful batch files.
  288. It is now garbo.uwasa.fi:/pc/ts/tsbat31.zip and contains 49 batch
  289. files. It adds
  290. - boot.bat for convenient selective booting from alternative
  291.   configurations. It is often believed that complicated programs are
  292.   needed for booting with alternative configurations. The boot.bat
  293.   batch shows that this need not be the case at all.
  294. - path.txt to explain how to easily circumvent the 127 character
  295.   limit on the path length.
  296. - showtime.bat to show both the date and the time without the hassle
  297.   of beating enter to death.
  298. - mve.bat to move file(s) to another directory.
  299.  
  300. Sat 7-Dec-91: I have updated my collection of useful batch files. It
  301. is now garbo.uwasa.fi:/pc/ts/tsbat30.zip.
  302.    Alan Clark (clark@odie.ee.wits.ac.za) suggested that the screen
  303. blanking batches could well do with a method to totally hide the
  304. cursor while blanked. I have looked into this and noticed that this
  305. can be easily achieved without extra programs by using ansi escape
  306. sequences. BLK.BAT shows how to do it. (You'll have to activate
  307. cursor hiding by editing three rems away).
  308.    Added LC.BAT line count for text files.
  309.    Added TEST33.BAT Test for MsDos 3.3 or later, batch demo
  310.  
  311. Sat 9-Nov-91: I have updated my collection of useful batch files to
  312. be garbo.uwasa.fi:/pc/ts/tsbat29.arc. It includes PUSHDIRE.BAT,
  313. SETPUSHD.EXE, and POPDIRE.BAT for pushing and popping the current
  314. directory (utilizing environment variables).  I have added a /q
  315. switch for quiet operation (no echoing of the environment variables)
  316. at a suggestion from Doug Tooley, djtooley@lotus.uwaterloo.ca.
  317.    I have added a TESTANSI.BAT batch (with accompanying ISANSI.EXE)
  318. which can be used to test whether any ansi-type screen driver is
  319. installed and thus available.
  320.    There are also some minor adjustments in a couple of the old
  321. batches.
  322.    Get this package even if you do not need the individual batches.
  323. There is much to learn from them about MsDos and batch usages. Many
  324. Frequently Asked Questions (FAQs) are implicitly answered by looking
  325. at these files.
  326.  
  327. Sun 20-Oct-91: I have a collection of useful batch files which I
  328. have updated to be garbo.uwasa.fi:/pc/ts/tsbat28.arc.
  329.   I have added a LEVEL.BAT testbench batch for testing the error
  330. level returned by programs.
  331.   I have updated the ASK.EXE batch file enhancer. It now has the
  332. option to of returning with a timeout errorlevel. The usage of
  333. this enhancer is:
  334.  ASK [Prompt] [/b] [/d] [/l] [/t##] [/u]
  335.                 !    !    !    !      +- convert to Upper case
  336.                 !    !    !    +- Time-out parameter (0 = forever)
  337.                 !    !    +- convert to Lower case
  338.                 !    +- Direct read (no <-+ needed)
  339.                 +- Batch mode (needed only if no prompt)
  340.    I have added an ASKENV.EXE batch file enhancer to the collection.
  341. It is similar to ASK.EXE, but instead of returning an errorlevel
  342. value, it sets the (parent's) environment variable ASKENV value
  343. equal to the user's response.
  344.  
  345. Mon 9-Sep-91: I have updated my collection of useful batch files. It
  346. is now /pc/ts/tsbat27.arc.
  347.    Four of the batches in the package has been updated. Of these
  348. DAILY.BAT for running a program no more than one a day (eg from
  349. autoexec.bat) utilized ENTER.TXT to simulate pressing the enter key.
  350. This is no longer necessary but has been rewritten (with a trick
  351. with the echo command) in a way that no longer needs this separate
  352. file. My thanks to Ran Cheremsh CHERMESH%BGUVM.BITNET for reporting
  353. the problem.
  354.    SCANZ for scanning .ZIP files for viruses had a bug in the
  355. routine for scanning embedded .ZIPs.
  356.  
  357. Tue 9-Jul-91: I have updated my collection of useful batch files. It
  358. is now /pc/ts/tsbat26.arc.
  359.    Note that even if you don't perhaps need the same batches as I
  360. do, these batches may teach you many useful batch programming
  361. tricks which I have accumulated during my PC years.
  362.    Made a number of minor stylistic corrections.
  363.    Since someone cracked the pkzip 1.10 authenticity (-av) code some
  364. BBSes have been putting in their own ads as the authenticity labels.
  365. A new batch rezip.bat removes these labels, which may give the users
  366. a false sense of security.
  367.    Added a simple batch ruler.bat which shows the screen columns
  368. using ansi codes to avoid excessive scrolling.
  369.    I have my ramdisk on currently on drive R on my PCs which I use
  370. at home and at office.  For whatever it is worth I have updated the
  371. batches to reflect this change. Some of the batches require anyway
  372. that you edit the paths in them to reflect yours, so no added
  373. problem arise because of this.  And, if you have your own ramdisk,
  374. say, on d:, you can put the statement subst r: d:\ eg in your
  375. autoexec.bat file to avoid the need of editing just because we may
  376. happen to have ramdisks on different drives. (To be accurate there
  377. is no absolute need of your d: physically being a ramdisk. But it
  378. makes things a bit faster.)
  379.  
  380. Sun 12-May-91: I have updated my collection of useful batch files to
  381. be /pc/ts/tsbat25.arc.
  382.    One of the constant worries of downloaders of archived packages
  383. is the threat of viruses. (Games from shady BBSes are particularly
  384. susceptible, but even commercial products have been known to be
  385. infected). Fortunately there are good virus checkers like McAfee's
  386. /pc/virus/scanv77.zip and Fridrik Skulason's /pc/virus/fp-115a.zip
  387. available to check for infections. There are, however, two dilemmas
  388. in checking archived packages on a routine basis. (Since the format
  389. garbo.uwasa.fi archives mostly uses is .zip let's speak of zipped
  390. files). The first problem is that there are so many executable
  391. compressors in use currently (such as lzexe, pklite, diet, tinyprog,
  392. etc). This means that unless the virus checking programs can observe
  393. all these variations, a virus can be hiding in an execompressed
  394. form. Therefore it is advisable to expand the executables for the
  395. check. A second problem is that .zip files occasionally contain
  396. embedded .zip files (eg PC-Magazine's collections often do). These
  397. embedded .zip files must be unzipped for a closer examination.
  398.    The earlier versions of the tsbat collection included a batch
  399. called scanzip.bat. I have completely rewritten this batch to take
  400. care of the two eventualities discussed above. I have renamed the
  401. rewritten batch scanz.bat. Note that before using this new batch,
  402. you have to go through scanz.bat and edit all the directory path
  403. references to correspond to your own configuration. This is, of
  404. course, an inconvenience, but it is the best way of guaranteeing
  405. that a batch complicated as this stays reasonably efficient.
  406.  
  407. Wed 13-Mar-91: I have written a menu based ansi.sys driven advanced
  408. batch for sending command codes to the printer to make printer
  409. initialization and setting easy. It is called setprn.bat. It is for
  410. Diconix Inkjet Parallel Printer Model 150, which is an Espon
  411. compatible printer. Thus the batch is suitable for various different
  412. printer makes, and easily configurable. I have added this batch to
  413. my collection of (hopefully) useful and instructive batch files
  414. /pc/ts/tsbat24.arc best available by anonymous ftp from
  415. garbo.uwasa.fi archives. There is a program-based alternative to
  416. setprn.bat, that is setdico.exe which can be found in
  417. /pc/ts/tsprn##.arc. The difference is that in setprn.bat you are
  418. able to configure the printer codes if you wish.
  419.  
  420. Sat 29-Dec-90: I have programmed a fair number of MsDos batch files
  421. to make up a batch file collection of hopefully both useful and
  422. instructive batches. I have updated the collection to be version
  423. /pc/ts/tsbat23.arc by adding some new batches.
  424. ...
  425.    FU.BAT is a poor man's function evaluator utilizing gwbasic that
  426. (usually) belongs automatically to the MsDos delivery. The basic
  427. idea (pardon the pun) of combining batch and gwbasic programming is
  428. not really mine. I got it from the PC-Magazine. The code of this
  429. batch, however, is entirely due to yours truly.
  430. ...
  431.    ASK.EXE is a common batch file enhancer returning as errorlevel
  432. the ascii value of the first character of the user's response.
  433. An example of a simple batch utilizing ASK:
  434.     echo off
  435.     ASK Yes or no? /d /u
  436.     if errorlevel==89 if not errorlevel==90 echo It was a yes
  437.     if errorlevel==78 if not errorlevel==79 echo It was a no
  438.     echo on
  439. My ask has switches for lower case (/l) and upper case (/u)
  440. conversions, and (/d) "direct" reads without needing to press the
  441. enter key. The ask prompt may include escape sequences for ansi
  442. graphics. This is a feature not always available in other ask
  443. programs.
  444.    Ok, there are countless ask batch enhancers already around, so
  445. why yet another. Simply so that then tsbat23.arc has it, and you
  446. don't have to get one separately. Furthermore, this ask is both
  447. simple and general enough to be easy to use while being still
  448. flexible.
  449.    BTW, ask is the one command which the original MsDos batch
  450. programming most conspicuously lacks and needs. So many other
  451. seemingly lacking features are embedded in MsDos, and you just have
  452. to ferret them out. That's partly what tsbat23.arc collection is
  453. about.
  454. ...
  455.    SAFEDEL.BAT is a generalized batch for deleting files. It asks
  456. for confirmation for each file to be deleted. The usage is
  457.         SAFEDEL [FileName1] [FileNam2] ...
  458. and wildcards are allowed.
  459. ...
  460.    MENU.BAT show show to build menus for easy program selection by
  461. the user. This batch utilizes ask.exe, and is livened up by ansi
  462. graphics.
  463. ...
  464.    UNPACK.BAT has been updated. It extracts, tests, and views packed
  465. files (archives) irrespective of the packing method. The update
  466. handles also .arj files (the new arrival sent packing on the scene).
  467.  
  468. Mon 22-Oct-90: I have updated my batch file collection to be
  469. /pc/ts/tsbat22.arc. PC-Magazine Vol 9 Num 14 published a batch to
  470. com file compiler bat2exec.com by Douglas Boling which is in the
  471. /pc/pd2/bat2ex13.zip package at chyde.uwasa.fi archives. As would be
  472. expected a batch compiler is more stringent in its requirements than
  473. MsDos. Consequently I have gone through the batches in my collection
  474. and seen to it that they are compilable. Note that in doing this I
  475. have not altered the tasks of the batch files, nor have I included
  476. the resultant compiled .com files. Where needed, I have just
  477. adjusted the batches to conform with bat2exec.com compiler
  478. requirements.
  479.    Among others there is an addpath.bat batch for adding directories
  480. to the path without needing to rewrite the whole path as the
  481. ordinary path command would require. In a similar manner there is
  482. delpath.bat to omit a single directory from the path. Delpath.bat
  483. needs an auxiliary batch file called setvar.bat, which must be
  484. available to the delpath.bat. Delpath now checks whether the
  485. auxiliary setvar.bat file is available in the current directory or
  486. at path before running the rest of delpath.bat.
  487.    When a batch contains a call to a program, the program must
  488. either be in the current directory, at path, or the call must
  489. contain the path to the program. The last method has the
  490. disadvantage of requiring adaptation to user's own structure.
  491. Therefore the most general method is having the necessary program(s)
  492. at path. If the program is not available, a normal batch ends in a
  493. "Bad command or file name" error message. This gives very little
  494. information of the cause of the problem. Therefore I have added
  495. routines in the batches to precheck that the required program(s) are
  496. indeed at path, and if not, issue a proper error message telling
  497. what exactly is awry. (The batch trick here is testing whether a
  498. given file is at path.)
  499.    An additional note. Batches like delpath.bat cannot obviously be
  500. compiled successfully with bat2exec because of its need of an
  501. auxiliary batch. Another batch that works as a normal batch file,
  502. but won't work when compiled is color.bat. Color.bat sets the screen
  503. color attributes using ansi code. Bat2exec.exe compiler has similar
  504. problems with some other batches as well, but this does not affect
  505. the user of these batch files in any way.
  506.    I have added blk.bat as an alternative simple screen saver to
  507. complement blank.bat. Blk.bat stores the screen before blanking and
  508. pops it when you exit the saver.
  509.  
  510. Fri 13-Jul-90:  One of the operators at our computer centre asked me
  511. today whether I know a replacement utility for MsDos diskcopy to
  512. copy a 1.2Mb floppy to another without having to change the disks
  513. more than once. This is because MsDos diskcopy.com requires a total
  514. of five disk changes in the process, and besides this being tedious
  515. one easily gets things mixed up. If you look at things this way,
  516. scopy.bat in /pc/ts/tsbat21.arc does exactly what he was asking for,
  517. in a single step. But on the balance, you must have the target disk
  518. formatted before you begin the process (diskcopy does that for you,
  519. if necessary). This batch method works easily, though, only if the
  520. diskette to be copied has no subdirectories.
  521.  
  522. Sun 24-Jun-90: I have updated my batch file collection to be
  523. (/pc/ts)/tsbat21.arc. This time I have added my rendition of setting
  524. the screen text color and background. The color.bat batch uses ansi
  525. color codes. (Thus you must have loaded ansi.sys driver, or its
  526. enhanced equivalent (such as nansi.sys or zansi.sys). In other words
  527. your config.sys must have a line like device=\sys\zansi.sys in it).
  528.    Version tsbat20 introduced a scanzip.bat batch as a shell to scan
  529. .zip packages for viruses utilizing McAfee's scan.exe virus checker.
  530. In addition to unzipping the .zip files into a temporary directory
  531. the batch uncompressed lzexec .exe files, if any, using Alan
  532. Posner's (/pc/pd2) isl12.zip and Mitugu Kuriziono's
  533. (/pc/pd2/)unlzexe5.zip. With the introduction of version
  534. (/pc/virus/)scanv63.zip uncompression lzexed executables is no
  535. longer necessary, and I have adjusted the batch accordingly. I have,
  536. however, done this by just commenting away parts of the batch, so
  537. that you can still apply it if you have earlier than scan.exe
  538. version 63. I have also added checking overlay files in addition to
  539. .exe and .com files.
  540.    Please note that your email comments, feedback and suggestions on
  541. the ts-programs would be welcome. And if you want to look at other
  542. users' feedback, you can see it by getting /pc/pd2/post##.txt (## =
  543. 01, 02, and so on).
  544.  
  545. Thu 7-Jun-90: Lzexed files pose a problem for the present virus
  546. scanners. While waiting to see the announced scanv63 to appear with
  547. abilities to scan lzexe-compressed files, I wrote a batch to handle
  548. scanning .zip packages. This batch checks both ordinary and lzexed
  549. files within a .zip package. The following shareware and PD programs
  550. are needed: pkunzip.exe, scan.exe, islzexe.exe, unlzexe.exe, The
  551. packages containing these programs can be found from good BBSes and
  552. eg from chyde.uwasa.fi by anonymous ftp. The new batch scanzip.bat
  553. is included in the updated /pc/ts/tsbat20.arc batch file collection.
  554.  
  555. Fri 1-Jun-90: Released version /pc/ts/tsbat19.arc of my batch files
  556. collection. It includes two new batches. There is a poor man's
  557. screen save blank.bat, and there is an extension of the MsDos type
  558. command show.bat, which allows the usage of wildcards and multiple
  559. file names. You'll decide yourself if there is any usage for a
  560. wildcard type. Myself, I do not see any outright, but the batch
  561. itself is a very good exercise in batch programming. If you are new
  562. to this aspect of MsDos, I think you will learn many useful tricks
  563. from batches like this. - Where possible, I have tried to write the
  564. batches in a way that they need a minimum about of auxiliary files
  565. or such auxiliary programs, which are not part of MsDos (internal or
  566. external) commands. - I have rewritten lastboot.bat (recording the
  567. previous boot time of your PC) and logrun.bat (recording program
  568. usage) so that they no longer need the auxiliary files enter.txt and
  569. star.txt, which have been deleted from the new version. - There are
  570. some stylistic changes in scopy.bat.
  571.  
  572. Sat 17-Mar-90: Released a new version /pc/ts/tsbat18.arc of my batch
  573. files collection. - It seems that this batch collection has become
  574. perhaps the most popular of my packages judging from the recent
  575. download figures and the comments from users. (A note written later:
  576. The most downloaded package of mine is the Frequently Asked
  577. Questions /pc/ts/tsfaq##.arc, by a broad margin). - Corrected a
  578. small bug in c.bat that prevented going back to the root directory.
  579. - Built a simple batch lastboot.bat for displaying the date and time
  580. of the previous booting. - Also built a new batch virus.bat. This
  581. batch makes a directory both prior and after running the suspect
  582. program, and gives a warning if the directories differ, and prepares
  583. a list of the differences. The batch can be also used by a
  584. knowledgeable user for the more benevolent similar purpose of
  585. checking what files a certain programs changes.
  586.    *Flame off* One lesson to be learned from batch programming is
  587. that properly used MsDos can be quite flexible. I think it is here
  588. to stay for a long time yet Unix and OS/2 notwithstanding. And this
  589. does not mean castigating Unix nor OS/2. (Any discussion of this
  590. aspect to the proper newsgroups, if you please.) *Flame on* :-)
  591.  
  592. Sun 11-Mar-90: Released a new version /pc/ts/tsbat17.arc of my batch
  593. files collection. This update introduces a batch shell unpack.bat
  594. for extracting, testing, and viewing packed files irrespective of
  595. the packing method.
  596.  
  597. Sun 04-Mar-90: My batch file collection is now version (/pc/ts/)
  598. tsbat16.arc. - Addpath.bat appending new directories to the path now
  599. checks whether the directory exists, and whether the directory
  600. already is at path, thus preventing mistakes by the user. I use this
  601. batch myself a lot, and since I often make typing errors, I wanted
  602. the batch to do the validity checking for me. - Arc2zip.bat
  603. converting an .arc file to a .zip file, with comment, has added
  604. safeguards against errors and corrupted archives. - Deldir.bat for
  605. deleting the files from a directory and then removing the directory,
  606. has been rewritten. - There are also new batches in the collection.
  607. - There is a harddisk version of the packing methods converter
  608. called zoo2arch.bat. It is a .zoo to .zip converter eg for those who
  609. prefer tighter .zip files over the binary posting's current .zoo
  610. packing method. - If you have been annoyed by the fact that MsDos
  611. cannot take more than one command per command line, m.bat is the
  612. batch for you. It is a batch that facilitates giving multiple MsDos
  613. commands. Another new batch is d.bat. It gives the directory with
  614. sort and generalized name matching. - Also managed to resist the
  615. temptation to rename the documentation to the obvious bat.man.
  616.  
  617. Thu 25-Jan-90: I have updated my batch file collection to be version
  618. (/pc/ts/)tsbat15.arc.  There is just one addition, daily.bat. It is
  619. intended to run a program from the autoexec.bat file only once in a
  620. day.  There are programs in circulation, which achieve the same
  621. thing as daily.bat.  The trick in daily.bat is that it is a true
  622. batch file without the need of any external user-made programs.
  623. This not a very difficult to do, but tricky enough to be
  624. interesting and educational.
  625.  
  626. Tue 16-Jan-90: I have still been thinking about batch files and
  627. interesting tricks to do with them, and I therefore publish a new
  628. upgrade of my botch :-) collection in a rapid succession after the
  629. last update. The upgrade is (/pc/ts/)tsbat14.arc, and it will be
  630. available by anonymous ftp at least from chyde.uwasa.fi, Simtel20,
  631. and by BBS download or file request from Micro Maniacs Opus 2:515/1
  632. telephone 358-0-425966. Two new utilities are included. The first is
  633. delpath.bat, which removes a directory from the path variable. This
  634. was a really tricky one, and my solution (contrary to the other
  635. batches in the collection) requires MsDos version 3.30 because it
  636. uses the call command. I have since seen another solution in the
  637. PC-Magazine (Vol 8 No 21) but mine uses a somewhat different
  638. technique, and should be clearer because even I can understand how
  639. mine works :-). The second new batch is deldir.bat for deleting the
  640. files from a directory and then removing the directory. This is
  641. really trivial, but I needed it myself. I have tried to include
  642. reasonable number of safeguards within this batch.
  643.  
  644. Sun 14-Jan-90: I have updated my batch file collection to be version
  645. (/pc/ts/)tsbat13.arc.
  646.    There is a new batch arc2zip.bat for converting an .arc file to a
  647. corresponding .zip file. The batch automatically adds your zip-file
  648. comment to the converted .zip. Also, the date of the zip file is
  649. automatically set to the date of the latest file within the .zip,
  650. not the date of the conversion.
  651.    Another new batch is zipdate. It demonstrates how to datestamp
  652. .zip packages.
  653.    The new version also includes a second addpath utility. It is
  654. apath-om.bat and is by Otto Makela. It is included in my batch file
  655. collection with Otto's explicit permission. Thanks Otto. This batch
  656. nicely demonstrates testing a condition (is a directory already in
  657. the path) in MsDos batch programming. I had an interesting time
  658. testing Otto's batch and discussing the dilemmas in the earlier
  659. versions after Otto posted the original version in the news in
  660. alt.msdos.programmer. I think that we both gained in the process. I
  661. would pleased to consider similar useful contributions from other
  662. users, as well. If you are interested, contact me by email.
  663.    Where.bat has been rewritten. It finds a file by using a search
  664. string on the file name. Contrary to the ordinary wildcarded MsDos
  665. DIR-type convention, where.bat matches the search string anywhere
  666. within the body of the file name. The updated where.bat has been
  667. made case-insensitive (applies upper case conversion on batch
  668. parameters).
  669.    Some of the other batches in the package have had their help
  670. texts extended.
  671.  
  672. Sat 18-Nov-89: There are several nice memory resident push/pop
  673. directory utilities around. As you know pushdir stores the name of
  674. the directory where you are. You can then change the directory (and
  675. the drive) as much as you like, and popdir takes you right back to
  676. the original directory. But memory resident programs tend to pile
  677. up, and I started thinking whether push/pop can be achieved using
  678. non-resident batch methods. PUSHDIRE.BAT and POPDIRE.BAT together
  679. with SETPUSHD.EXE do this by juggling the environment variables. I
  680. pushed these files in my batch file collection and updated it to be
  681. tsbat12.arc. You can pop them from there.
  682.  
  683. Tue 31-Oct-89: Released update /pc/ts/tsbat11.arc of my batch files
  684. collection. The new release introduces LOGRUN.BAT. It can be used
  685. for calling programs and logging the call in a usage log with
  686. time/date information. The batch utilizes MsDos time and date
  687. commands for making the usage log of the program calls. The bug
  688. caused by the non-standard switch /i in the file finder WHERE.BAT
  689. has been amended. A new batch LOCATE.BAT for locating a file (or
  690. files) on a disk has been added. Contrary to WHERE.BAT it is not
  691. case sensitive. The "change the directory" batch has been renamed
  692. C.BAT (was SD.BAT). I have also added more comments within some of
  693. the batches.
  694.   If you get an "Out of environment space" message in these, or any
  695. other batches, try increasing your environment space by using shell
  696. configuration in config.sys:
  697.      Example: shell=c:\bin\command.com c:\bin /e:1024 /p
  698.  
  699. Sun 29-Oct-89: I decided to introduce a batch file collection
  700. /pc/ts/tsbat10.arc.  The batches are quite straightforward, and do
  701. not need any special auxiliary programs, just the ordinary MsDos
  702. commands.  Some of the batches are from my other utility packages,
  703. some are new.  I do not claim a high degree of originality.  This is
  704. because the methods and tasks of batch programming keep repeating
  705. over and over again.  But I hope that you will find some of my
  706. tricks useful.
  707.   And if you feel that you have useful batches yourself, which you
  708. would like to distribute to your fellow users, I would be interested
  709. in considering any good ideas for development.  Due credit would
  710. naturally be given.  I would, however, reserve the right to choose,
  711. and to develop your batches to suit the future versions of this
  712. Public Domain collection.
  713.  
  714. Thu 26-Oct-89: I have a private mailing list for emailing these
  715. update news. Especially, if you have my programs downloadable at
  716. your site or your BBS you are welcome to ask for inclusion on this
  717. list by emailing to me at ts@chyde.uwasa.fi.
  718.